package com.coffee.core.enums;

/**
 * @Description 异常枚举
 * @ClassName ExceptionEnum
 * @Author liaoyangfan
 * @Date 2021/1/18
 * @Version 1.0
 **/
public enum ExceptionEnum {


    //基本
    ERROR_0001(1, "添加异常"),
    ERROR_0002(2, "更新异常"),
    ERROR_0003(3, "删除异常"),
    ERROR_0004(4, "查询异常"),
    ERROR_0005(5, "导出异常"),
    ERROR_0006(6, "导入异常"),
    ERROR_0007(7, "登录异常"),
    ERROR_0008(8, "发送短信异常"),
    ERROR_0009(9, "你还尚未登录"),


    //权限相关异常
    ERROR_1000(1000, "权限添加异常"),
    ERROR_1001(1001, "权限更新异常"),
    ERROR_1002(1002, "权限删除异常"),
    ERROR_1003(1003, "权限查询异常"),
    ERROR_1004(1004, "权限名称不能为空"),
    ERROR_1005(1005, "权限别名不能为空"),
    ERROR_1006(1006, "权限类型不能为空"),
    ERROR_1007(1007, "父级权限ID不能为空"),
    ERROR_1008(1008, "权限ID不能为空"),
    ERROR_200014(200014, "您没有该功能权限"),

    //角色关异常
    ERROR_1100(1100, "角色添加异常"),
    ERROR_1101(1101, "角色更新异常"),
    ERROR_1102(1102, "角色删除异常"),
    ERROR_1103(1103, "角色查询异常"),
    ERROR_1104(1104, "角色名称不能为空"),
    ERROR_1105(1105, "所属商户ID不能为空"),
    ERROR_1106(1106, "角色ID不能为空"),
    ERROR_1107(1107, "角色被禁用"),


    //登录/注册相关
    ERROR_1201(1201, "账号不能为空"),
    ERROR_1202(1202, "密码不能为空"),
    ERROR_1203(1203, "账户密码错误，请重新输入"),
    ERROR_1204(1204, "ip不能为空"),
    ERROR_1205(1205, "登录来源不能为空"),
    ERROR_1206(1206, "退出登录异常"),
    ERROR_1207(1207, "登录状态不能为空"),
    ERROR_1208(1208, "用户ID不能为空"),
    ERROR_1209(1209, "短信模板code不能为空"),
    ERROR_1210(1210, "验证码错误"),
    ERROR_1211(1211, "短信来源错误"),
    ERROR_1212(1212, "手机号格式错误"),
    ERROR_1213(1213, "登录方式不能为空"),
    ERROR_1214(1214, "未知登录方式"),
    ERROR_1215(1215, "密码不符合规则请输入8-16字母和数字的组合"),
    ERROR_1216(1216, "请输入正确的身份证号码"),
    ERROR_1217(1217, "请输入正确的姓名"),
    ERROR_1218(1218, "请输入正确的手机号码"),
    ERROR_1219(1219, "新密码不能为空"),
    ERROR_1220(1220, "确认密码不能为空"),
    ERROR_1221(1221, "两次输入密码不一致"),
    ERROR_1222(1222, "该手机号未注册"),
    ERROR_1223(1223, "账号已被冻结"),
    ERROR_1224(1224, "请重新选择验证码或密码更换手机号"),
    ERROR_1225(1225, "原密码不能为空"),
    ERROR_1226(1226, "手机号不能为空"),
    ERROR_1227(1227, "查询不到短信模板"),
    ERROR_1228(1228, "该账号已被冻结,若解冻请联系管理员"),
    ERROR_1229(1229, "验证码不能为空"),
    ERROR_1230(1230, "新密码不能为空"),
    ERROR_1231(1231, "请重新选择验证码或原密码更换密码"),
    ERROR_1232(1232, "用户组别不能为空"),
    ERROR_1233(1233, "账户信息不存在,请前往注册"),
    ERROR_1234(1234, "账户信息已存在"),


    //平台相关异常
    ERROR_1301(1301, "账户名称不能为空"),
    ERROR_1302(1302, "手机号不能为空"),
    ERROR_1303(1303, "角色ID不可以为空"),
    ERROR_1304(1304, "密码不能为空"),
    ERROR_1305(1305, "已存在该手机号操作人员"),
    ERROR_1306(1306, "账户不存在"),
    ERROR_1307(1307, "超级管理员无法编辑"),
    ERROR_1308(1308, "上下架状态不可以为空"),
    ERROR_1309(1309, "角色ID不可以为空"),
    ERROR_1310(1310, "角色不存在"),
    ERROR_1311(1311, "此角色不可以操作"),
    ERROR_1312(1312, "角色名称不能为空"),
    ERROR_1313(1313, "权限ID不可以为空"),
    ERROR_1314(1314, "该角色不可编辑"),
    ERROR_1315(1315, "上架的轮播图不允许编辑"),
    ERROR_1316(1316, "轮播图列表id不能为空"),
    ERROR_1317(1317, "类目id不能为空"),
    ERROR_1318(1318, "商品不存在"),
    ERROR_1319(1319, "商品名称不可以为空"),
    ERROR_1320(1320, "副标题不可以为空"),
    ERROR_1321(1321, "供应商不可以为空"),
    ERROR_1322(1322, "商品分类不可以为空"),
    ERROR_1323(1323, "物流信息不可以为空"),
    ERROR_1324(1324, "图文详情不可以为空"),
    ERROR_1325(1325, "商品详情不可以为空"),
    ERROR_1326(1326, "销售信息不可以为空"),
    ERROR_1327(1327, "商品id不可以为空"),
    ERROR_1328(1328, "期货商品不存在"),
    ERROR_1329(1329, "期货商品详情不存在,无法修改"),
    ERROR_1330(1330, "期货检测详情不存在,无法修改"),
    ERROR_1331(1331, "期货商品不存在"),
    ERROR_1332(1332, "商品不存在"),
    ERROR_1333(1333, "商品未下架，无法删除"),
    ERROR_1334(1334, "商品未下架，无法编辑"),
    ERROR_1335(1335, "样品规格不可以为空"),
    ERROR_1336(1336, "样品物流不可以为空"),
    ERROR_1337(1337, "检测机构不可以为空"),
    ERROR_1338(1338, "物流不可以为空"),
    ERROR_1339(1339, "数量必须为正数"),
    ERROR_1340(1340, "价格必须为正数"),
    ERROR_1341(1341, "规格必须为正数"),
    ERROR_1342(1342, "该商品不属于你"),
    ERROR_1343(1343, "轮播图状态不能为空"),
    ERROR_1344(1344, "类目已使用"),
    ERROR_1345(1345, "备注不能为空"),
    ERROR_1346(1346, "供货商id不能为空"),
    ERROR_1347(1347, "类目属性不能为空"),
    ERROR_1348(1348, "类目属性错误"),
    ERROR_1349(1349, "类目属性已经创建成功"),
    ERROR_1350(1350, "类目商品属性参数不能为空"),
    ERROR_1351(1351, "类目其他属性参数不能为空"),
    ERROR_1352(1352, "热销商品数量为4-8个"),
    ERROR_1353(1353, "类目名称已经存在"),

    //商户相关相关异常
    ERROR_1400(1400, "手机号码已存在"),
    ERROR_1401(1401, "新密码不能与旧密码一致"),
    ERROR_1402(1402, "商户不存在"),
    ERROR_1403(1403, "积分操作错误"),
    ERROR_1404(1404, "请输入正确真实姓名"),
    ERROR_1405(1405, "更换的手机号不能与之前的一致"),
    ERROR_1406(1406, "与更换的手机号码不一致"),
    ERROR_1407(1407, "手机号码已存在"),
    ERROR_1408(1408, "查询不到该用户ID"),
    ERROR_1409(1409, "登录手机号码不能删除"),
    ERROR_1410(1410, "校验已过期请重试"),
    ERROR_1411(1411, "头像不能为空"),
    ERROR_1412(1412, "手机号码未注册"),
    ERROR_1413(1413, "你不能领取该任务,请联系客服"),
    ERROR_1414(1414, "旧密码错误"),
    ERROR_1415(1415, "商户余额不足"),


    //供应商相关相关异常
    ERROR_1500(1500, "供应商不存在"),
    ERROR_1501(1501, "新密码不能与旧密码一致"),
    ERROR_1502(1502, "角色名称不能为空"),
    ERROR_1503(1503, "权限ID不可以为空"),
    ERROR_1504(1504, "该角色不可编辑"),
    ERROR_1505(1505, "该角色不属于你"),
    ERROR_1506(1506, "账户名称不能为空"),
    ERROR_1507(1507, "手机号不能为空"),
    ERROR_1508(1508, "角色ID不可以为空"),
    ERROR_1509(1509, "密码不能为空"),
    ERROR_1510(1510, "已存在该手机号"),
    ERROR_1511(1511, "账户不存在"),
    ERROR_1512(1512, "超级管理员无法编辑"),

    //系统设置相关异常
    ERROR_1600(1600, "参数不存在"),
    ERROR_1601(1601, "基础设置已经存在"),

    //商户端商品相关
    ERROR_1701(1701, "商品不存在"),
    ERROR_1702(1602, "商品已下架"),
    ERROR_1703(1703, "商品规格不存在"),
    ERROR_1704(1704, "积分抵扣规则不存在"),
    ERROR_1705(1705, "拼团规则不存在"),
    ERROR_1706(1706, "积分不足，扣减积分失败"),
    ERROR_1707(1707, "拼团商品不允许购物车购买"),
    ERROR_1708(1708, "商品被禁用"),
    ERROR_1709(1709, "不是先享后付商品"),
    ERROR_1710(1710, "该商品仅支持“XX”购买和收货。"),
    ERROR_1711(1711, "购物车id不能为空"),
    ERROR_1712(1712, "“XX”该区域无法购买“YY”商品"),
    ERROR_1713(1713, "该商品只能通过账户余额购买"),
    ERROR_1714(1714, "无购买权限，仅限充值的用户购买。"),


    //订单相关
    ERROR_1800(1800, "订单已支付成功"),
    ERROR_1801(1801, "订单不存在"),
    ERROR_1802(1802, "物流订单不存在"),
    ERROR_1803(1803, "正在处理中"),
    ERROR_1804(1804, "退款成功,请勿重复提交"),
    ERROR_1805(1805, "不是申请中状态，无法操作"),
    ERROR_1806(1806, "审核状态错误"),
    ERROR_1807(1807, "物流订单已支付，无法设置"),
    ERROR_1808(1808, "订单详情id不能为空"),
    ERROR_1809(1809, "付费方式无法直接上传单号"),
    ERROR_1810(1810, "可直接上传物流单号"),
    ERROR_1811(1811, "没有权限购买期货商品"),
    ERROR_1812(1812, "期货订单id不能为空"),
    ERROR_1813(1813, "期货订单不存在"),
    ERROR_1814(1814, "选择方案不存在"),
    ERROR_1815(1815, "该订单不属于你"),
    ERROR_1816(1816, ",该商品库存不足"),
    ERROR_1817(1817, "选择数量与之前选择不一致"),
    ERROR_1819(1819, "明确报价已经存在"),
    ERROR_1820(1820, "买方未确认，无法修改"),
    ERROR_1821(1821, "订单状态不对,无法付款"),
    ERROR_1822(1822, "卖方未开始备货，无法设置物流价格"),
    ERROR_1823(1823, "你无法操作该订单"),
    ERROR_1824(1824, "检测机构不存在"),
    ERROR_1825(1825, "支付方式错误"),
    ERROR_1826(1826, "库存不足"),
    ERROR_1827(1827, "积分不足"),
    ERROR_1828(1828, "凭证不能为空"),
    ERROR_1829(1829, "检测订单不存在"),
    ERROR_1830(1830, "检测凭证已经上传"),
    ERROR_1831(1831, "检测订单未支付"),
    ERROR_1832(1832, "检测订单已支付"),
    ERROR_1833(1833, "明确报价价格不能为空"),
    ERROR_1834(1834, "物流信息已经上传了"),
    ERROR_1835(1835, "物流还未付费,无法上传"),
    ERROR_1836(1836, "检测订单已经存在,请去检测订单列表查看"),
    ERROR_1837(1837, "意向报价或者明确报价必须存在一个"),
    ERROR_1838(1838, "已经存在当天的价格"),
    ERROR_1839(1839, "商品未发货,无法确认收货"),
    ERROR_1840(1840, "订单已经支付"),
    ERROR_1841(1841, "联系人不能为空"),
    ERROR_1842(1842, "联系人手机号不能为空"),
    ERROR_1843(1843, "联系人地址不能为空"),
    ERROR_1844(1844, "用户已经选择过了"),
    ERROR_1845(1845, ",该报价供应商还未上传价格,无法确认"),
    ERROR_1846(1846, "物流金额不能为空"),
    ERROR_1847(1847, "订单已经取消无法操作"),
    ERROR_1848(1848, "该报价已经确认过了,无法再次确认"),
    ERROR_1849(1849, "免费的检测机构无需支付"),
    ERROR_1850(1850, "询价数量不能为空"),
    ERROR_1851(1851, "拼团码不存在"),
    ERROR_1852(1852, "拼团已经完成"),
    ERROR_1853(1853, "有不属于该商户的购物车商品"),
    ERROR_1854(1854, "订单已经支付无法取消,请申请退款"),
    ERROR_1855(1855, "未获取到支付信息"),
    ERROR_1856(1856, "该商品不是拼团商品"),
    ERROR_1857(1857, "该城市不支持拼团"),
    ERROR_1858(1858, "拼团商品还没成团,不支持上传物流"),
    ERROR_1859(1859, "拼团时间已过"),
    ERROR_1860(1860, "已经参与该拼团了"),
    ERROR_1861(1861, "该团已经成功了，请重新参与拼团"),
    ERROR_1862(1862, "你没有购买权限"),
    ERROR_1863(1863, "开票信息不存在"),
    ERROR_1864(1864, "该订单已经开票"),
    ERROR_1865(1865, "订单类型错误"),
    ERROR_1866(1866, "openId不能为空"),
    ERROR_1867(1867, "outOrderId不能为空"),
    ERROR_1868(1868, "merchantId不能为空"),
    ERROR_1869(1869, "您好，您无法先享后付购买商品，如有疑问，请联系客服！"),
    ERROR_1870(1870, "您的先享后付额度不足无法使用，请联系客服！"),
    ERROR_1871(1871, "该区域先享后付额度不足无法使用，请联系客服！"),
    ERROR_1872(1872, "订单已经发货，无法取消"),
    ERROR_1873(1873, "区域商品订单不允许修改城市"),
    ERROR_1874(1874, "订单未支付"),
    ERROR_1875(1875, "满减城市已经存在"),
    ERROR_1876(1876, "订单已经支付，无法修改价格"),

    ERROR_1900(1900, "代理商已经存在"),
    ERROR_1901(1901, "状态已经审核"),
    ERROR_1902(1902, "代理商不存在或已下架"),
    ERROR_1903(1903, "分佣商品不存在"),
    ERROR_1904(1904, "无法操作不是你的分销商"),
    ERROR_1905(1905, "分销员超上限了"),
    ERROR_1906(1906, "驳回理由不能为空"),
    ERROR_1907(1907, "城市合伙人不存在"),
    ERROR_1908(1908, "不是城市合伙人无法操作"),
    ERROR_1909(1909, "设置失败，您的先享后付额度不足。"),
    ERROR_1910(1910, "该客户已被XXX绑定，佣金将结算至XXX账户"),
    ERROR_1911(1911, "该账号的角色不是商户角色"),

    //分期购商品
    ERROR_2000(2000, "该商品已经为主商品"),
    ERROR_2001(2001, "该商品已经为其他商品的副商品"),
    ERROR_2002(2002, "副商品已经存在规格了"),
    ERROR_2003(2003, "该规格信息已经被使用了"),
    ERROR_2004(2004, "该分期还有未支付的订单,请先去支付或者取消"),
    ERROR_2005(2005, "商品数据错误"),
    ERROR_2006(2006, "期数超了"),
    ERROR_2007(2007, "订单已经完结了"),
    ERROR_2008(2008, "最后一期需要全部提取完成"),
    ERROR_2009(2009, "提取数量大于剩余数量"),
    ERROR_2010(2010, "该商品已经被购买,无法删除"),
    ERROR_2011(2011, "该商品已经全部买完了"),
    ERROR_2012(2012, "该商品还存在未删除的订单"),

    //充值金额
    ERROR_2100(2100, "充值金额已经存在"),
    ERROR_2101(2101, "已经充值成功，无需修改"),
    ERROR_2102(2102, "扣款失败，余额不足"),
    ERROR_2103(2103, "扣款失败，金额不能为负数"),

    ERROR_9998(9998, "支付凭证不能为空"),
    ERROR_9999(9999, "未知异常");

    private Integer code;

    private String message;

    ExceptionEnum(Integer code, String message) {
        this.code = code;
        this.message = message;
    }

    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}
